There are a wide variety of technologies and platforms from which computer applications can be developed. In some cases, organizations decide to transition legacy applications from one platform or technology to another. This type of migration can be time consuming and fraught with complexity. Transitioning legacy applications is particularly difficult because the migration process needs to capture not only underlying data of users, but also the forms and business logic associated with the applications.
For example, many organizations are decommissioning applications from a product called Lotus Notes™ by IBM of Armonk, N.Y., and are transitioning to a platform based on Microsoft collaboration technologies (e.g., Exchange Server™, SharePoint™ and Office™). One technology to which companies are migrating is Microsoft SharePoint™ offered by Microsoft Corporation of Redmond, Wash., because of its capabilities in creating collaboration, integration and an enterprise portal as per the business need.
According to one embodiment, this disclosure provides a system and method for migrating an application from a legacy platform to another platform. In moving towards adoption of a mature web platform from a legacy platform, such as Lotus Notes™, one step of the migration process can be to leverage a platform, such as Microsoft's SharePoint™ 2010 OOB (out-of-box), with capabilities such as collaboration, content management, business forms, workflows and business intelligence through controlled access, which results in better governance policies and reductions in administration cost.
The next logical step is to extend the OOB capabilities utilizing an application development platform, such as Microsoft's SharePoint 2010™. In the case of using a development platform, such as SharePoint 2010™, advanced capabilities can be utilized, such as integrating with external LOB (line-of-business) applications, data aggregation, search and advanced collaboration through a rapid development and deployment framework. In some cases, this may include the use of cloud computing, such as for services and/or data storage. Since SharePoint 2010™ is supported on a cloud platform (e.g., Office 365™ from Microsoft), this provides an agile business platform available with SharePoint 2010™ and Office 365™ adoption in coming years. In some cases, business processes can be improved and optimized as well, not just migration of the applications “as is.”
Thus, in some embodiments, this disclosure provides a system and method that caters to the current Lotus Notes™ to SharePoint™ migration requirements. For example, the system and method can provide an automated, integrated and managed solution for migration of Lotus Notes™ data to SharePoint™. Although the use of the system and method to migrate from Lotus Notes™ to SharePoint™ is described for purposes of example, embodiments are contemplated in which the system/method could be used to migrate to/from other types of platforms and technologies. For example, embodiments are contemplated in which the system/method could be used to migrate a product called eRoom™ from EMC Corporation of Hopkinton, Mass., to SharePoint™. By way of another example, embodiments are contemplated in which the system and method discussed herein could be used to migrate from Lotus Notes™ to a product called Documentum™ from EMC Corporation.
According to another aspect, this disclosure provides a computerized system for migrating one or more applications. The system includes memory for storing instructions and data associated with a computerized migration tool. A processor is configured to execute the stored instructions. The instructions may cause the processor to perform the steps including: analyzing a legacy application to be migrated to a new platform; generating one or more reports showing results of the analysis of the legacy application; migrating a schema of the legacy application to the new platform; and migrating a content of the legacy application to the new platform. The analysis of the legacy application may include determining a complexity of migrating the legacy application to the new platform.
According to a further aspect, this disclosure provides a computerized system for migrating one or more applications. The system includes one or more processing devices and one or more storage devices. The one or more storage devices may store instructions, which, when executed, cause the one or more processing devices to implement: a user interface, a pre-migration analysis unit, and a migration unit. The user interface may be configured with one or more interface elements from which a user can select one or more of an application schema and application content from a legacy application to be migrated to a new platform.
The pre-migration analysis unit may be configured to analyze complexity of migrating the legacy application by counting one or more types of design elements in the legacy application, wherein the pre-migration analysis unit is configured to generate a report based on the analysis of legacy application. The migration unit may be configured to migrate the legacy application to the new platform based on one or more selections on the user interface.
According to yet a further aspect of the present disclosure, a computerized method for migrating applications is disclosed. A legacy application may be analyzed to determine a complexity of migrating a legacy application to a new platform. One or more reports may be generated showing the complexity of migrating the legacy application to the new platform. A schema of the legacy application may be migrated to the new platform. Further, content of the legacy application may be migrated to the new platform. In some cases, portions of the content may be migrated independent of migration of the schema. Also, during migration, links of one portion to another portion of the content may be preserved.
According to yet a further aspect of the present disclosure, a computer program product comprising a non-transitory computer readable medium is disclosed. The medium may comprise: code for analyzing a legacy application to determine a complexity of migrating the legacy application to a new platform; code for generating one or more reports showing the complexity of migrating the legacy application to the new platform; code for migrating a schema of the legacy application to the new platform; and code for migrating a content of the legacy application to the new platform.
Additional features and advantages of the invention will become apparent to those skilled in the art upon consideration of the following detailed description of the illustrated embodiment exemplifying the best mode of carrying out the invention as presently perceived. It is intended that all such additional features and advantages be included within this description and be within the scope of the invention.
Corresponding reference characters indicate corresponding parts throughout the several views. The components in the figures are not necessarily to scale, emphasis instead being placed upon illustrating the principals of the invention. The exemplification set out herein illustrates embodiments of the invention, and such exemplification is not to be construed as limiting the scope of the invention in any manner.